Skip to content

ci: add cargo mutants weekly job #276

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

oleonardolima
Copy link
Contributor

Description

I think it's also a good idea to adopt mutation testing to bdk_wallet and other crates in our ecosystem. It can be achieved through the usage of cargo mutants. It's already adopted by Bitcoin Core and Rust Bitcoin, and you can find more about the rational here.

This PR adds a new CI job following the rust-bitcoin's weekly job, and opens an issue reporting the mutants found, if any.

It can be run on a PR basis, but as it can be slow to run, I don't think we should adopt that now, but fine-tuning to only mutate within each PR changes can be done in the future.

Notes to the reviewers

As it's the first time running cargo mutants on the crate, it's quite slow and time-consuming to run. Since no custom re exclusion is being used yet, you'll notice this if you try to run it locally.

Changelog notice

Checklists

All Submissions:

New Features:

  • I've added tests for the new feature
  • I've added docs for the new feature

- following the rust-bitcoin's weekly job, it adds a new one to
  `bdk_wallet` that runs the `cargo mutants` and open a new issue
reporting the found mutants, if any.
@oleonardolima oleonardolima self-assigned this Jul 8, 2025
@coveralls
Copy link

Pull Request Test Coverage Report for Build 16151720430

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 84.733%

Totals Coverage Status
Change from base Build 16052072493: 0.0%
Covered Lines: 6577
Relevant Lines: 7762

💛 - Coveralls

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

2 participants